
//注：
//1.此js引擎不支持Es6,es6或typescript需要先转成es5
//2.如果要使用java类型，需要使用 var System = Java.type("java.lang.System"); 的形式引入
//3.本导出程序已经提前引入了部分Java类型，在pre.js中，详情可查看pre.js代码
//life_cyce.js用来扩展导表工具的生命周期

//配置加载后的处理
/**
 * configs数据类型：map类型
 * @param configs
 */
function afterConfigLoaded(configs) {
    console.log("=======afterConfigLoaded："+ configs);
}

//枚举定义加载完后的处理
/**
 * enums数据类型
 * [
 * {
 *  className:"",
 *  tag:"",
 *  enumItems:[
 *   {name:"",value:""，desc:""}
 *  ]
 * }
 * ]
 * @param enums
 */
function afterEnumLoaded(enums){
    log("============afterEnumLoaded，枚举数量："+enums.length)
    for (var i = 0;i<enums.length;i++) {
        var item = enums[i];
        console.log("-----------枚举类名:" + item.className + "   枚举tag:" + item.tag);
        var enumItems = item.enumItems;
        for (var j = 0; j < enumItems.length; j++) {
            var enumItem = enumItems[j];
            console.log(enumItem.name + "\t\t" + enumItem.value+"\t\t"+enumItem.comment);
        }
    }
}

//导出文件路径收集完成后，文件的表头解析前，参数为string列表，所有待导出的文件名
function exportFileCollected(filePaths) {
    console.log("============exportFileCollected："+filePaths)
}


//根据tag和枚举定义决定用什么模板进行处理
function customEnumTemplate(tag,enumDefine){

    return "EnumTemplate.ftl";
}

//根据tag和实体类定义决定用什么模板进行处理
function customEntityTemplate(tag,classDefine){
    return "enum_template.ftl";
}
//TODO 当前脚本是在java虚拟机内执行的，有时我们想调起新进程执行，不在当前虚拟机中执行，则可以使用如下代码
